#include<stdio.h>
#include<string.h>
#include<math.h>
#include<iostream>
#include<string>
#include<algorithm>
#include<map>
#include<queue>
#include<vector>
using namespace std;
typedef long long ll;
queue<int> q;
vector<int> edge[n];
int main()
{
	std::ios::sync_with_stdio(0);
	for(int i=1;i<=n;i++)
	if(in[i]==0) q.push(i);
	vector<int> ans;
	while(!q.empty()){
		int p=q.front();q.pop();
		ans.push_back(p);
		for(int i=0;i<edge[p].size();i++){
			int y=edge[p][i];
			in[y]--;
			if(in[y]==0) q.push(y);
		}
	}
	if(ans.size()==n){
		
	}
	return 0;
}